The present disclosure relates to computer software, and more specifically, to dynamically optimized device driver protocol assist threads.
Device drivers enable operating systems to communicate with hardware devices, such as network adapters and other peripherals. Some network adapter device drivers provide protocol stack assist threads that enable multi-processor systems to process data more efficiently. Traditionally, the number of protocol stack assist threads is fixed. However, network traffic typically is erratic and not steady, leading to inefficient system performance due to the number of data packets required to run the protocol stack assist threads efficiently. Providing too many protocol stack assist threads may waste processor cycles or cause high thread overhead, as the threads may have too few data units to process. Additionally, using a fixed number of threads can cause high latency when a burst of traffic arrives.